<?php

namespace Mogod\Core\Controller;

/**
 *
 * Абстрактный класс контроллера
 *
 * @author goorus, morph
 *
 */
class ControllerAbstract
{

	/**
	 * Выполняемое задание
	 *
	 * @var ControllerTask
	 */
	protected $task;

	/**
	 * Входные данные
	 *
	 * @var \Mogod\Core\Data\DataTransaction
	 */
	protected $input;

	/**
	 * Результирующие данные
	 *
	 * @var \Mogod\Core\Data\DataTransaction
	 */
	protected $output;

	/**
	 * Запуск задания на выполнение.
	 *
	 * @param ControllerTask $task Задание
	 */
	public function execute($task)
	{
		$this->task = $task;
		$this->input = $task->getInput();
		$this->output = $task->getOutput();
	}

}
